home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CUCD / Kids / CareBearSums / autoexec.AMOS / autoexec.amosSourceCode next >
Encoding:
AMOS Source Code  |  1998-01-16  |  10.3 KB  |  433 lines

  1. '**************************************************************
  2. '*                                                            *
  3. '*                   THE CARE BEARS                           *
  4. '*                         BY                                 *
  5. '*                    MARK MURRAY                             *
  6. '*                                                            *
  7. '**************************************************************
  8. 'this is my first effort at a programme.I made loads of mistakes 
  9. 'but have managed to get it running not to bad.
  10. 'If you can alter this programme to make it run better 
  11. 'then please tell me   
  12. 'or if you just need to communicate with me the address is.. 
  13. 'Mark Murray,148 Gardner Crescent,Kincorth,Aberdeen,AB1 5TQ
  14. EARL:
  15. Bob Off 
  16. Auto View Off 
  17. Shared KEY,GAME
  18. Global KEY,GAME
  19. If GAME<1 Then SCR
  20. ZO
  21. If GAME<1 Then Double Buffer 
  22. 'cages 
  23. Bob 5,204,86,14
  24. Bob 6,152,86,14
  25. Bob 7,257,86,14
  26. 'cage lids 
  27. Bob 8,262,64,16
  28. Bob 9,209,64,16
  29. Bob 10,155,64,16
  30. KEY=0
  31. CAGE1
  32. CAGE2
  33. CAGE3
  34. MARK:
  35. BEAR
  36. SUM
  37. Rem change key numbers to change amount of shots needed to get key 
  38. If KEY>3 Then Amal Off 4
  39. If KEY>6 Then Amal Off 3
  40. If KEY>9 Then Amal Off 5
  41. If KEY=3 Then FIRST : BEAR : SUM
  42. If KEY=6 Then SECOND : BEAR : SUM
  43. If KEY=9 Then THIRD : FINALSCENARIO : Goto EARL
  44. AWAY
  45. Goto MARK
  46. Procedure BEAR
  47.    Channel 1 To Bob 15
  48.    Bob 15,-70,140,1
  49.    M$="Anim 3,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(5,4)(4,4)(3,4)(2,4);"
  50.    M$=M$+"Move 250,0,100 ; "
  51.    M$=M$+"Anim 1,($8001,4)($8002,4)($8003,4)($8004,4)($8005,4)($8006,4)($8005,4)($8004,4)($8003,4)($8002,4);"
  52.    M$=M$+"Move -40,0,20;M 0,-40,10"
  53.    Amal 1,M$
  54.    Amal On 1
  55.    For A=1 To 150
  56.       K34$=Inkey$
  57.       Clear Key 
  58.       If Lower$(K34$)="q" or Asc(K34$)=27
  59.          End 
  60.       End If 
  61.       Wait 1
  62.    Next A
  63.    Amal Off 1
  64.    Bob 15,140,100,($8004)
  65. End Proc
  66. Procedure AWAY
  67.    Channel 2 To Bob 15
  68.    Bob 15,140,100,$8001
  69.    M$="Anim 4,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(5,4)(4,4)(3,4)(2,4);"
  70.    M$=M$+"Move 40,40,100 ;"
  71.    M$=M$+"Anim 5,($8001,4)($8002,4)($8003,4)($8004,4)($8005,4)($8006,4)($8005,4)($8004,4)($8003,4)($8002,4);"
  72.    M$=M$+" Move -250,0,80"
  73.    Amal 2,M$
  74.    Amal On 2
  75.    For A=1 To 150
  76.       K34$=Inkey$
  77.       Clear Key 
  78.       If Lower$(K34$)="q" or Asc(K34$)=27
  79.          End 
  80.       End If 
  81.       Wait 1
  82.    Next A
  83.    Amal Off 2
  84. End Proc
  85. Procedure SUM
  86.    ZX:
  87.    A=Rnd(10) : B=Rnd(8)
  88.    MA=Max(A,B) : MI=Min(A,B)
  89.    A=MA : B=MI
  90.    If A+B>12 or A+B<1 Then Goto ZX
  91.    A$=Str$(A) : B$=Str$(B)
  92.    Ink 15,14, : Text 33,80,A$ : Text 74,80,B$
  93.    Clear Key 
  94.    Do 
  95.       K34$=Inkey$
  96.       Clear Key 
  97.       If Lower$(K34$)="q" or Asc(K34$)=27
  98.          End 
  99.       End If 
  100.       C=Mouse Zone
  101.       If Mouse Click=1 and C>0 and C<13 Then Exit 
  102.    Loop 
  103.    C$=Str$(C)
  104.    Ink ,12, : Text 62,113,C$
  105. If A+B=C : Bell : Inc KEY : Else Shoot : End If 
  106.    For A=1 To 200
  107.       K34$=Inkey$
  108.       Clear Key 
  109.       If Lower$(K34$)="q" or Asc(K34$)=27
  110.          End 
  111.       End If 
  112.       Wait 1
  113.    Next A
  114.    Ink 12,, : Text 62,113,C$
  115.    Ink 14,14, : Text 33,80,A$ : Text 74,80,B$
  116. End Proc
  117. Procedure SCR
  118.    Screen Open 1,320,250,16,Lowres
  119.    Screen Open 0,320,250,16,Lowres
  120.    Load "sprites/funshine.abk"
  121.    Curs Off : Flash Off : Hide 
  122.    Load "mus"
  123.    Load Iff "iff/caretitle.iff",0
  124.    Load Iff "iff/bear.iff",1
  125.    Amos To Front 
  126.    Get Fonts 
  127.    Set Font 1 : Set Text 0
  128.    Screen Display 0,128,45,,
  129.    Get Sprite Palette 
  130.    Music 1
  131.    Tempo 9
  132.    Repeat 
  133.       K34$=Inkey$
  134.       Clear Key 
  135.       If Lower$(K34$)="q" or Asc(K34$)=27
  136.          End 
  137.       End If 
  138.    Until Mouse Key=1
  139.    Screen Display 1,128,45,,
  140.    View 
  141. End Proc
  142. Procedure ZO
  143.    Reserve Zone 12
  144.    L=27
  145.    Locate 1,L : Print Zone$(Border$("1",2),1)
  146.    Locate 4,L : Print Zone$(Border$("2",2),2)
  147.    Locate 7,L : Print Zone$(Border$("3",2),3)
  148.    Locate 10,L : Print Zone$(Border$("4",2),4)
  149.    Locate 13,L : Print Zone$(Border$("5",2),5)
  150.    Locate 16,L : Print Zone$(Border$("6",2),6)
  151.    Locate 19,L : Print Zone$(Border$("7",2),7)
  152.    Locate 22,L : Print Zone$(Border$("8",2),8)
  153.    Locate 25,L : Print Zone$(Border$("9",2),9)
  154.    Locate 28,L : Print Zone$(Border$("10",2),10)
  155.    Locate 32,L : Print Zone$(Border$("11",2),11)
  156.    Locate 36,L : Print Zone$(Border$("12",2),12)
  157.    Limit Mouse 130,253 To 435,274
  158.    Show 
  159. End Proc
  160. Procedure CAGE1
  161.    Channel 4 To Bob 3
  162.    Bob 3,180,88,11
  163.    M$=M$+"B:Move 10,3,20 ; Move -10,-3,30;Jump B"
  164.    Amal 4,M$
  165.    Amal On 4
  166. End Proc
  167. Procedure CAGE2
  168.    Channel 3 To Bob 2
  169.    Bob 2,230,100,10
  170.    M$=M$+"C:Move 10,3,30 ; Move -10,-3,20;Jump C"
  171.    Amal 3,M$
  172.    Amal On 3
  173. End Proc
  174. Procedure CAGE3
  175.    Channel 5 To Bob 4
  176.    Bob 4,286,88,11
  177.    M$="D:Move 10,-3,30 ;M-10,3,20;Jump D "
  178.    Amal 5,M$
  179.    Amal On 5
  180. End Proc
  181. Procedure FIRST
  182.    For Y=126 To 130
  183.       Bob 11,45,Y,7
  184.       Wait 5
  185.    Next Y
  186.    Rem gets key and opens first cage
  187.    Channel 6 To Bob 15
  188.    Bob 15,140,100,$8001
  189.    M$="Anim 2,($8001,4)($8002,4)($8003,4)($8004,4)($8005,4)($8006,4)($8005,4)($8004,4)($8003,4)($8002,4);"
  190.    M$=M$+"Move 0,-20,20;M -90,0,30"
  191.    M$=M$+"Anim 3,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(5,4)(4,4)(3,4)(2,4);"
  192.    M$=M$+"Move 130,0,100 ; M 0,-20,20"
  193.    Amal 6,M$
  194.    Amal On 6
  195.    Do 
  196.       If X Bob(15)<70 Then Bob Off 11 : Exit 
  197.    Loop 
  198.    For A=1 To 200
  199.       K34$=Inkey$
  200.       Clear Key 
  201.       If Lower$(K34$)="q" or Asc(K34$)=27
  202.          End 
  203.       End If 
  204.       Wait 1
  205.    Next A
  206.    ' lock open
  207.    Bob 12,194,81,15
  208.    'lid open
  209.    Bob Off 10
  210.    Bob 1,156,64,17
  211.    Rem bear goes away 
  212.    Channel 7 To Bob 15
  213.    Bob 15,140,100,1
  214.    M$=""
  215.    M$="Anim 3,(1,6)(2,6)(3,6)(4,6)(5,6)(6,6)(5,6)(4,6)(3,6)(2,6);"
  216.    M$=M$+"Move 0,50,50;M 230,0,150"
  217.    Amal 7,M$
  218.    Amal On 7
  219.    For A=1 To 150
  220.       K34$=Inkey$
  221.       Clear Key 
  222.       If Lower$(K34$)="q" or Asc(K34$)=27
  223.          End 
  224.       End If 
  225.       Wait 1
  226.    Next A
  227.    Rem star comes out of box
  228.    Channel 8 To Bob 3
  229.    Bob 3,180,88,12
  230.    M$=""
  231.    M$=M$+"Anim 0,(12,150)(13,25)"
  232.    M$=M$+"Move 1,-50,50;M -15,0,10"
  233.    M$=M$+"Star:Move 10,-5,20;M 10,5,20;M -10,-5,20;M -10,5,20;Jump Star"
  234.    Amal 8,M$
  235.    Amal On 8
  236.    For A=1 To 150
  237.       K34$=Inkey$
  238.       Clear Key 
  239.       If Lower$(K34$)="q" or Asc(K34$)=27
  240.          End 
  241.       End If 
  242.       Wait 1
  243.    Next A
  244. End Proc
  245. Procedure SECOND
  246.    For Y=126 To 130 Step 2
  247.       Bob 11,45,Y,7
  248.       Wait 5
  249.    Next Y
  250.    Rem gets key and opens second cage 
  251.    Channel 9 To Bob 15
  252.    Bob 15,140,100,$8001
  253.    M$="Anim 2,($8001,4)($8002,4)($8003,4)($8004,4)($8005,4)($8006,4)($8005,4)($8004,4)($8003,4)($8002,4);"
  254.    M$=M$+"Move 0,-20,20;M -90,0,30"
  255.    M$=M$+"Anim 4,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(5,4)(4,4)(3,4)(2,4);"
  256.    M$=M$+"Move 180,0,100 ; M 0,-20,20"
  257.    Amal 9,M$
  258.    Amal On 9
  259.    Do 
  260.       If X Bob(15)<70 Then Bob Off 11 : Exit 
  261.    Loop 
  262.    For A=1 To 200
  263.       K34$=Inkey$
  264.       Clear Key 
  265.       If Lower$(K34$)="q" or Asc(K34$)=27
  266.          End 
  267.       End If 
  268.       Wait 1
  269.    Next A
  270.    ' lock open
  271.    Bob 13,246,81,15
  272.    'lid open
  273.    Bob 5,208,66,17
  274.    Rem NEW CAGE ,I got bob priorities all wrong 
  275.    Bob Off 9
  276.    Bob 10,204,86,14
  277.    Rem bear goes away 
  278.    Channel 10 To Bob 15
  279.    Bob 15,230,60,1
  280.    M$=""
  281.    M$="Anim 3,(1,6)(2,6)(3,6)(4,6)(5,6)(6,6)(5,6)(4,6)(3,6)(2,6);"
  282.    M$=M$+"Move 0,50,30;M 230,0,120"
  283.    Amal 10,M$
  284.    Amal On 10
  285.    For A=1 To 110
  286.       K34$=Inkey$
  287.       Clear Key 
  288.       If Lower$(K34$)="q" or Asc(K34$)=27
  289.          End 
  290.       End If 
  291.       Wait 1
  292.    Next A
  293.    Rem heart comes out of box 
  294.    Bob Off 2
  295.    Channel 11 To Bob 9
  296.    Bob 9,230,100,9
  297.    M$=""
  298.    M$=M$+"Move-5,-50,50;"
  299.    M$=M$+"Heart:Move 10,-5,20;M 10,5,20;M -10,-5,20;M -10,5,20;Jump Heart"
  300.    Amal 11,M$
  301.    Amal On 11
  302.    For A=1 To 150
  303.       K34$=Inkey$
  304.       Clear Key 
  305.       If Lower$(K34$)="q" or Asc(K34$)=27
  306.          End 
  307.       End If 
  308.       Wait 1
  309.    Next A
  310. End Proc
  311. Procedure THIRD
  312.    For Y=126 To 130 Step 2
  313.       Bob 11,45,Y,7
  314.       Wait 5
  315.    Next Y
  316.    Rem gets key and opens first cage
  317.    Channel 12 To Bob 15
  318.    Bob 15,140,100,$8001
  319.    M$="Anim 2,($8001,4)($8002,4)($8003,4)($8004,4)($8005,4)($8006,4)($8005,4)($8004,4)($8003,4)($8002,4);"
  320.    M$=M$+"Move 0,-20,20;M -90,0,30"
  321.    M$=M$+"Anim 4,(1,4)(2,4)(3,4)(4,4)(5,4)(6,4)(5,4)(4,4)(3,4)(2,4);"
  322.    M$=M$+"Move 240,0,140 ; M 0,-20,20"
  323.    Amal 12,M$
  324.    Amal On 12
  325.    Do 
  326.       If X Bob(15)<70 Then Bob Off 11 : Exit 
  327.    Loop 
  328.    For A=1 To 200
  329.       K34$=Inkey$
  330.       Clear Key 
  331.       If Lower$(K34$)="q" or Asc(K34$)=27
  332.          End 
  333.       End If 
  334.       Wait 1
  335.    Next A
  336.    ' lock open
  337.    Bob 14,298,81,15
  338.    Rem dont need 1st and 2nd bars now 
  339.    Bob Off 10
  340.    Bob Off 6
  341.    Rem 3rd lid down goes bye,bye
  342.    Bob Off 8
  343.    ' lid open 
  344.    Bob 2,262,65,17
  345.    Rem bear goes away 
  346.    Channel 13 To Bob 15
  347.    Bob 15,290,40,1
  348.    M$=""
  349.    M$="Anim 2,(1,6)(2,6)(3,6)(4,6)(5,6)(6,6)(5,6)(4,6)(3,6)(2,6);"
  350.    M$=M$+"Move 0,50,20;M 80,0,50"
  351.    Amal 13,M$
  352.    Amal On 13
  353.    For A=1 To 80
  354.       K34$=Inkey$
  355.       Clear Key 
  356.       If Lower$(K34$)="q" or Asc(K34$)=27
  357.          End 
  358.       End If 
  359.       Wait 1
  360.    Next A
  361.    Rem star comes out of box
  362.    Channel 14 To Bob 4
  363.    Bob 4,286,88,12
  364.    M$=""
  365.    M$=M$+"Anim 0,(12,150)(13,25)"
  366.    M$=M$+"Move 0,-50,50;"
  367.    M$=M$+"Star:Move 10,-5,20;M 10,5,20;M -10,-5,20;M -10,5,20;Jump Star"
  368.    Amal 14,M$
  369.    Amal On 14
  370.    For A=1 To 150
  371.       K34$=Inkey$
  372.       Clear Key 
  373.       If Lower$(K34$)="q" or Asc(K34$)=27
  374.          End 
  375.       End If 
  376.       Wait 1
  377.    Next A
  378. End Proc
  379. Procedure FINALSCENARIO
  380.    Bob Off 7
  381.    Rem star 1 goes away 
  382.    Channel 4 To Bob 3
  383.    Bob 3,,,
  384.    Amal 4,"Move 0,90,50 ; Move -200,0,100 ; "
  385.    Amal On 4
  386.    Rem heart goes away
  387.    Channel 3 To Bob 9
  388.    Bob 9,,,
  389.    Amal 3,"Move 0,90,50 ; Move -280,0,140 ; "
  390.    Amal On 3
  391.    Rem star 2 goes away 
  392.    Channel 5 To Bob 4
  393.    Bob 4,,,
  394.    Amal 5,"Move 0,90,50 ; Move -380,0,190 ; "
  395.    Amal On 5
  396.    For A=1 To 300
  397.       K34$=Inkey$
  398.       Clear Key 
  399.       If Lower$(K34$)="q" or Asc(K34$)=27
  400.          End 
  401.       End If 
  402.       Wait 1
  403.    Next A
  404.    Rem play again sequence
  405.    Screen Open 5,320,90,16,Lowres : Curs Off : Flash Off : Cls 0
  406.    Box 30,10 To 300,80 : Box 32,12 To 298,78
  407.    Cls 4,33,13 To 298,78
  408.    Paper 4
  409.    Locate 13,2 : Print "Well done."
  410.    Locate 13,3 : Print "Play again?"
  411.    Auto View On 
  412.    Rem view 
  413.    For Z=1 To 90
  414.       Screen Display 5,,,,Z
  415.       Wait 1
  416.    Next Z
  417.    Reserve Zone 2
  418.    Paper 11
  419.    Locate 10,6 : Print Zone$(Border$("Yes",2),1)
  420.    Locate 30,6 : Print Zone$(Border$("No",2),2)
  421.    Limit Mouse 157,60 To 425,130
  422.    Do 
  423.       If Mouse Key=1 and Mouse Zone>0 Then MZ=Mouse Zone
  424.       If MZ=2 Then End 
  425.       If MZ=1 Then Exit 
  426.    Loop 
  427.    For Z=90 To 1 Step -1
  428.       Screen Display 5,,,,Z
  429.       Wait 1
  430.    Next Z
  431.    Screen Close 5
  432.    GAME=1
  433. End Proc